#include <bits/stdc++.h>
using namespace std;
const int maxn=1e3+10;
int n,a[maxn],dp[maxn];
int main()
{
	cin >> n;
	for(int i=0;i<n;i++)
	{
		cin >> a[i];
	}
	int maxx=-100000;
	for(int i=0;i<n;i++)
	{
		dp[i]=1;
		for(int j=0;j<i;j++)
		{
			if(a[i]>a[j])
			{
				dp[i]=max(dp[i],dp[j]+1);
			}
		}
		maxx=max(maxx,dp[i]);
	}
	cout << maxx << endl;
	return 0;
}
